<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!--
/**
*  \file
*
*  \brief       BMW SWC Darh
*
*  This file contains the implementation of the BMW SWC Darh
*  for usage in the BMW Platform Software.
*
*  \project     BMW Platform Software
*
*  \copyright   BMW AG 2017
*
*  \version     5.1.0
*
*  \remarks     -
*
*/
-->
<AUTOSAR xmlns="http://autosar.org/schema/r4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://autosar.org/schema/r4.0 AUTOSAR_4-2-2_STRICT_COMPACT.xsd">
  <AR-PACKAGES>
    <AR-PACKAGE>
      <SHORT-NAME>BMW</SHORT-NAME>
      <AR-PACKAGES>
        <AR-PACKAGE>
          <SHORT-NAME>Platform</SHORT-NAME>
          <AR-PACKAGES>

            <!-- Darh -->
            <AR-PACKAGE>
              <SHORT-NAME>Darh</SHORT-NAME>
              <AR-PACKAGES>

                <!-- Darh CompuMethods -->
                <AR-PACKAGE>
                  <SHORT-NAME>CompuMethods</SHORT-NAME>
                  <ELEMENTS>
                    <!-- !LINKSTO DARH_017,2 -->
                    <COMPU-METHOD>
                      <SHORT-NAME>CM_Darh_RoeStateType</SHORT-NAME>
                      <CATEGORY>TEXTTABLE</CATEGORY>
                      <!-- This type shall be consistent to generic UDS_RoeStateType type -->
                      <COMPU-INTERNAL-TO-PHYS>
                        <COMPU-SCALES>
                          <COMPU-SCALE>
                            <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0</LOWER-LIMIT>
                            <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0</UPPER-LIMIT>
                            <COMPU-CONST>
                              <VT>DARH_ROE_STOPPED</VT>
                            </COMPU-CONST>
                          </COMPU-SCALE>
                          <COMPU-SCALE>
                            <LOWER-LIMIT INTERVAL-TYPE="CLOSED">1</LOWER-LIMIT>
                            <UPPER-LIMIT INTERVAL-TYPE="CLOSED">1</UPPER-LIMIT>
                            <COMPU-CONST>
                              <VT>DARH_ROE_STARTED</VT>
                            </COMPU-CONST>
                          </COMPU-SCALE>
                          <COMPU-SCALE>
                            <LOWER-LIMIT INTERVAL-TYPE="CLOSED">2</LOWER-LIMIT>
                            <UPPER-LIMIT INTERVAL-TYPE="CLOSED">2</UPPER-LIMIT>
                            <COMPU-CONST>
                              <VT>DARH_ROE_UNKNOWN</VT>
                            </COMPU-CONST>
                          </COMPU-SCALE>
                        </COMPU-SCALES>
                      </COMPU-INTERNAL-TO-PHYS>
                    </COMPU-METHOD>

                    <!-- !LINKSTO DARH_214,1 -->
                    <COMPU-METHOD>
                      <SHORT-NAME>CM_Darh_DcmIndicationType</SHORT-NAME>
                      <CATEGORY>TEXTTABLE</CATEGORY>
                      <COMPU-INTERNAL-TO-PHYS>
                        <COMPU-SCALES>
                          <COMPU-SCALE>
                            <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0</LOWER-LIMIT>
                            <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0</UPPER-LIMIT>
                            <COMPU-CONST>
                              <VT>DARH_DCM_NOINDICATION</VT>
                            </COMPU-CONST>
                          </COMPU-SCALE>
                          <COMPU-SCALE>
                            <LOWER-LIMIT INTERVAL-TYPE="CLOSED">1</LOWER-LIMIT>
                            <UPPER-LIMIT INTERVAL-TYPE="CLOSED">1</UPPER-LIMIT>
                            <COMPU-CONST>
                              <VT>DARH_DCM_ACTIVATED</VT>
                            </COMPU-CONST>
                          </COMPU-SCALE>
                          <COMPU-SCALE>
                            <LOWER-LIMIT INTERVAL-TYPE="CLOSED">2</LOWER-LIMIT>
                            <UPPER-LIMIT INTERVAL-TYPE="CLOSED">2</UPPER-LIMIT>
                            <COMPU-CONST>
                              <VT>DARH_DCM_STOPPED</VT>
                            </COMPU-CONST>
                          </COMPU-SCALE>
                        </COMPU-SCALES>
                      </COMPU-INTERNAL-TO-PHYS>
                    </COMPU-METHOD>

                    <!-- !LINKSTO DARH_215,1 -->
                    <COMPU-METHOD>
                      <SHORT-NAME>CM_Darh_SuspendedStateType</SHORT-NAME>
                      <CATEGORY>TEXTTABLE</CATEGORY>
                      <COMPU-INTERNAL-TO-PHYS>
                        <COMPU-SCALES>
                          <COMPU-SCALE>
                            <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0</LOWER-LIMIT>
                            <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0</UPPER-LIMIT>
                            <COMPU-CONST>
                              <VT>DARH_NOT_SUSPENDED</VT>
                            </COMPU-CONST>
                          </COMPU-SCALE>
                          <COMPU-SCALE>
                            <LOWER-LIMIT INTERVAL-TYPE="CLOSED">1</LOWER-LIMIT>
                            <UPPER-LIMIT INTERVAL-TYPE="CLOSED">1</UPPER-LIMIT>
                            <COMPU-CONST>
                              <VT>DARH_SUSPENDED</VT>
                            </COMPU-CONST>
                          </COMPU-SCALE>
                        </COMPU-SCALES>
                      </COMPU-INTERNAL-TO-PHYS>
                    </COMPU-METHOD>

                    <!-- !LINKSTO DARH_143,3 -->
                    <COMPU-METHOD>
                      <SHORT-NAME>CM_LifeCycleRequest</SHORT-NAME>
                      <CATEGORY>TEXTTABLE</CATEGORY>
                      <COMPU-INTERNAL-TO-PHYS>
                        <COMPU-SCALES>
                          <COMPU-SCALE>
                            <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0</LOWER-LIMIT>
                            <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0</UPPER-LIMIT>
                            <COMPU-CONST>
                              <VT>DARH_INITIALIZED</VT>
                            </COMPU-CONST>
                          </COMPU-SCALE>
                          <COMPU-SCALE>
                            <LOWER-LIMIT INTERVAL-TYPE="CLOSED">1</LOWER-LIMIT>
                            <UPPER-LIMIT INTERVAL-TYPE="CLOSED">1</UPPER-LIMIT>
                            <COMPU-CONST>
                              <VT>DARH_RUNNING</VT>
                            </COMPU-CONST>
                          </COMPU-SCALE>
                          <COMPU-SCALE>
                            <LOWER-LIMIT INTERVAL-TYPE="CLOSED">2</LOWER-LIMIT>
                            <UPPER-LIMIT INTERVAL-TYPE="CLOSED">2</UPPER-LIMIT>
                            <COMPU-CONST>
                              <VT>DARH_STOPPED</VT>
                            </COMPU-CONST>
                          </COMPU-SCALE>
                        </COMPU-SCALES>
                      </COMPU-INTERNAL-TO-PHYS>
                    </COMPU-METHOD>
                  </ELEMENTS>
                </AR-PACKAGE>

                <!-- Darh ImplementationDataTypes -->
                <AR-PACKAGE>
                  <SHORT-NAME>ImplementationDataTypes</SHORT-NAME>
                  <ELEMENTS>
                    <!-- !LINKSTO DARH_017,2 -->
                    <IMPLEMENTATION-DATA-TYPE>
                      <SHORT-NAME>Darh_RoeStateType</SHORT-NAME>
                      <CATEGORY>TYPE_REFERENCE</CATEGORY>
                      <SW-DATA-DEF-PROPS>
                        <SW-DATA-DEF-PROPS-VARIANTS>
                          <SW-DATA-DEF-PROPS-CONDITIONAL>
                            <COMPU-METHOD-REF DEST="COMPU-METHOD"
                              >/BMW/Platform/Darh/CompuMethods/CM_Darh_RoeStateType</COMPU-METHOD-REF>
                            <IMPLEMENTATION-DATA-TYPE-REF DEST="IMPLEMENTATION-DATA-TYPE"
                              >/AUTOSAR_Platform/ImplementationDataTypes/uint8</IMPLEMENTATION-DATA-TYPE-REF>
                          </SW-DATA-DEF-PROPS-CONDITIONAL>
                        </SW-DATA-DEF-PROPS-VARIANTS>
                      </SW-DATA-DEF-PROPS>
                    </IMPLEMENTATION-DATA-TYPE>

                    <!-- !LINKSTO DARH_215,1 -->
                    <IMPLEMENTATION-DATA-TYPE>
                      <SHORT-NAME>Darh_DcmIndicationType</SHORT-NAME>
                      <CATEGORY>TYPE_REFERENCE</CATEGORY>
                      <SW-DATA-DEF-PROPS>
                        <SW-DATA-DEF-PROPS-VARIANTS>
                          <SW-DATA-DEF-PROPS-CONDITIONAL>
                            <COMPU-METHOD-REF DEST="COMPU-METHOD"
                              >/BMW/Platform/Darh/CompuMethods/CM_Darh_DcmIndicationType</COMPU-METHOD-REF>
                            <IMPLEMENTATION-DATA-TYPE-REF DEST="IMPLEMENTATION-DATA-TYPE"
                              >/AUTOSAR_Platform/ImplementationDataTypes/uint8</IMPLEMENTATION-DATA-TYPE-REF>
                          </SW-DATA-DEF-PROPS-CONDITIONAL>
                        </SW-DATA-DEF-PROPS-VARIANTS>
                      </SW-DATA-DEF-PROPS>
                    </IMPLEMENTATION-DATA-TYPE>

                    <!-- !LINKSTO DARH_214,1 -->
                    <IMPLEMENTATION-DATA-TYPE>
                      <SHORT-NAME>Darh_SuspendedStateType</SHORT-NAME>
                      <CATEGORY>TYPE_REFERENCE</CATEGORY>
                      <SW-DATA-DEF-PROPS>
                        <SW-DATA-DEF-PROPS-VARIANTS>
                          <SW-DATA-DEF-PROPS-CONDITIONAL>
                            <COMPU-METHOD-REF DEST="COMPU-METHOD"
                              >/BMW/Platform/Darh/CompuMethods/CM_Darh_SuspendedStateType</COMPU-METHOD-REF>
                            <IMPLEMENTATION-DATA-TYPE-REF DEST="IMPLEMENTATION-DATA-TYPE"
                              >/AUTOSAR_Platform/ImplementationDataTypes/uint8</IMPLEMENTATION-DATA-TYPE-REF>
                          </SW-DATA-DEF-PROPS-CONDITIONAL>
                        </SW-DATA-DEF-PROPS-VARIANTS>
                      </SW-DATA-DEF-PROPS>
                    </IMPLEMENTATION-DATA-TYPE>

                    <!-- !LINKSTO DARH_143,3 -->
                    <IMPLEMENTATION-DATA-TYPE>
                      <SHORT-NAME>Darh_LifeCycleRequestType</SHORT-NAME>
                      <CATEGORY>TYPE_REFERENCE</CATEGORY>
                      <SW-DATA-DEF-PROPS>
                        <SW-DATA-DEF-PROPS-VARIANTS>
                          <SW-DATA-DEF-PROPS-CONDITIONAL>
                            <COMPU-METHOD-REF DEST="COMPU-METHOD"
                              >/BMW/Platform/Darh/CompuMethods/CM_LifeCycleRequest</COMPU-METHOD-REF>
                            <IMPLEMENTATION-DATA-TYPE-REF DEST="IMPLEMENTATION-DATA-TYPE"
                              >/AUTOSAR_Platform/ImplementationDataTypes/uint8</IMPLEMENTATION-DATA-TYPE-REF>
                          </SW-DATA-DEF-PROPS-CONDITIONAL>
                        </SW-DATA-DEF-PROPS-VARIANTS>
                      </SW-DATA-DEF-PROPS>
                    </IMPLEMENTATION-DATA-TYPE>

                  </ELEMENTS>
                </AR-PACKAGE>

                <!-- Darh PortInterfaces -->
                <AR-PACKAGE>
                  <SHORT-NAME>PortInterfaces</SHORT-NAME>
                  <ELEMENTS>

                    <CLIENT-SERVER-INTERFACE>
                      <SHORT-NAME>RoeStateInterface</SHORT-NAME>
                      <IS-SERVICE>false</IS-SERVICE>
                      <OPERATIONS>
                        <CLIENT-SERVER-OPERATION>
                          <SHORT-NAME>GetRoeState</SHORT-NAME>
                          <ARGUMENTS>
                            <ARGUMENT-DATA-PROTOTYPE>
                              <SHORT-NAME>RoeState</SHORT-NAME>
                              <TYPE-TREF DEST="IMPLEMENTATION-DATA-TYPE">/BMW/Platform/Darh/ImplementationDataTypes/Darh_RoeStateType</TYPE-TREF>
                              <DIRECTION>OUT</DIRECTION>
                            </ARGUMENT-DATA-PROTOTYPE>
                          </ARGUMENTS>
                          <POSSIBLE-ERROR-REFS>
                            <POSSIBLE-ERROR-REF DEST="APPLICATION-ERROR">/BMW/Platform/Darh/PortInterfaces/RoeStateInterface/E_NOT_OK</POSSIBLE-ERROR-REF>
                          </POSSIBLE-ERROR-REFS>
                        </CLIENT-SERVER-OPERATION>
                      </OPERATIONS>
                      <POSSIBLE-ERRORS>
                        <APPLICATION-ERROR>
                          <SHORT-NAME>E_NOT_OK</SHORT-NAME>
                          <ERROR-CODE>1</ERROR-CODE>
                        </APPLICATION-ERROR>
                      </POSSIBLE-ERRORS>
                    </CLIENT-SERVER-INTERFACE>

                    <!-- !LINKSTO DARH_100,2 -->
                    <CLIENT-SERVER-INTERFACE>
                      <SHORT-NAME>DarhControlInterface</SHORT-NAME>
                      <IS-SERVICE>false</IS-SERVICE>
                      <OPERATIONS>
                        <CLIENT-SERVER-OPERATION>
                          <SHORT-NAME>SetRoeSuspended</SHORT-NAME>
                          <ARGUMENTS>
                            <ARGUMENT-DATA-PROTOTYPE>
                              <SHORT-NAME>suspended</SHORT-NAME>
                              <TYPE-TREF DEST="IMPLEMENTATION-DATA-TYPE"
                                >/AUTOSAR_Platform/ImplementationDataTypes/boolean</TYPE-TREF>
                              <DIRECTION>IN</DIRECTION>
                            </ARGUMENT-DATA-PROTOTYPE>
                          </ARGUMENTS>
                          <POSSIBLE-ERROR-REFS>
                            <POSSIBLE-ERROR-REF DEST="APPLICATION-ERROR"
                              >/BMW/Platform/Darh/PortInterfaces/DarhControlInterface/E_NOT_OK</POSSIBLE-ERROR-REF>
                          </POSSIBLE-ERROR-REFS>
                        </CLIENT-SERVER-OPERATION>
                      </OPERATIONS>
                      <POSSIBLE-ERRORS>
                        <APPLICATION-ERROR>
                          <SHORT-NAME>E_NOT_OK</SHORT-NAME>
                          <ERROR-CODE>1</ERROR-CODE>
                        </APPLICATION-ERROR>
                      </POSSIBLE-ERRORS>
                    </CLIENT-SERVER-INTERFACE>
                    <!-- !LINKSTO DARH_169,2 -->
                    <SENDER-RECEIVER-INTERFACE>
                      <SHORT-NAME>ILifeCycleRequest</SHORT-NAME>
                      <IS-SERVICE>true</IS-SERVICE>
                      <DATA-ELEMENTS>
                        <VARIABLE-DATA-PROTOTYPE>
                          <SHORT-NAME>requestMode</SHORT-NAME>
                          <TYPE-TREF DEST="IMPLEMENTATION-DATA-TYPE"
                            >/BMW/Platform/Darh/ImplementationDataTypes/Darh_LifeCycleRequestType</TYPE-TREF>
                        </VARIABLE-DATA-PROTOTYPE>
                      </DATA-ELEMENTS>
                    </SENDER-RECEIVER-INTERFACE>
                    <!-- !LINKSTO DARH_193,1, DARH_191,1 -->
                    <CLIENT-SERVER-INTERFACE>
                      <SHORT-NAME>DarhReportDynamicallyEvent</SHORT-NAME>
                      <IS-SERVICE>false</IS-SERVICE>
                      <OPERATIONS>
                        <CLIENT-SERVER-OPERATION>
                          <SHORT-NAME>EventToReport</SHORT-NAME>
                          <ARGUMENTS>
                            <ARGUMENT-DATA-PROTOTYPE>
                              <SHORT-NAME>event</SHORT-NAME>
                              <TYPE-TREF DEST="IMPLEMENTATION-DATA-TYPE"
                                >/BMW/Platform/Darh/Dem/ImplementationDataTypes/Dem_EventIdType</TYPE-TREF>
                              <DIRECTION>IN</DIRECTION>
                            </ARGUMENT-DATA-PROTOTYPE>
                            <ARGUMENT-DATA-PROTOTYPE>
                              <SHORT-NAME>toReport</SHORT-NAME>
                              <TYPE-TREF DEST="IMPLEMENTATION-DATA-TYPE"
                                >/AUTOSAR_Platform/ImplementationDataTypes/boolean</TYPE-TREF>
                              <DIRECTION>OUT</DIRECTION>
                            </ARGUMENT-DATA-PROTOTYPE>
                          </ARGUMENTS>
                          <POSSIBLE-ERROR-REFS>
                            <POSSIBLE-ERROR-REF DEST="APPLICATION-ERROR"
                              >/BMW/Platform/Darh/PortInterfaces/DarhReportDynamicallyEvent/E_NOT_OK</POSSIBLE-ERROR-REF>
                          </POSSIBLE-ERROR-REFS>
                        </CLIENT-SERVER-OPERATION>
                        <CLIENT-SERVER-OPERATION>
                          <SHORT-NAME>EventToReportCount</SHORT-NAME>
                          <ARGUMENTS>
                            <ARGUMENT-DATA-PROTOTYPE>
                              <SHORT-NAME>eventCount</SHORT-NAME>
                              <TYPE-TREF DEST="IMPLEMENTATION-DATA-TYPE"
                                >/AUTOSAR_Platform/ImplementationDataTypes/uint16</TYPE-TREF>
                              <DIRECTION>OUT</DIRECTION>
                            </ARGUMENT-DATA-PROTOTYPE>
                          </ARGUMENTS>
                          <POSSIBLE-ERROR-REFS>
                            <POSSIBLE-ERROR-REF DEST="APPLICATION-ERROR"
                              >/BMW/Platform/Darh/PortInterfaces/DarhReportDynamicallyEvent/E_NOT_OK</POSSIBLE-ERROR-REF>
                          </POSSIBLE-ERROR-REFS>
                        </CLIENT-SERVER-OPERATION>
                        <CLIENT-SERVER-OPERATION>
                          <SHORT-NAME>EventIdx2EventId</SHORT-NAME>
                          <ARGUMENTS>
                            <ARGUMENT-DATA-PROTOTYPE>
                              <SHORT-NAME>eventIdx</SHORT-NAME>
                              <TYPE-TREF DEST="IMPLEMENTATION-DATA-TYPE"
                                >/AUTOSAR_Platform/ImplementationDataTypes/uint16</TYPE-TREF>
                              <DIRECTION>IN</DIRECTION>
                            </ARGUMENT-DATA-PROTOTYPE>
                            <ARGUMENT-DATA-PROTOTYPE>
                              <SHORT-NAME>eventId</SHORT-NAME>
                              <TYPE-TREF DEST="IMPLEMENTATION-DATA-TYPE"
                                >/BMW/Platform/Darh/Dem/ImplementationDataTypes/Dem_EventIdType</TYPE-TREF>
                              <DIRECTION>OUT</DIRECTION>
                            </ARGUMENT-DATA-PROTOTYPE>
                          </ARGUMENTS>
                          <POSSIBLE-ERROR-REFS>
                            <POSSIBLE-ERROR-REF DEST="APPLICATION-ERROR"
                              >/BMW/Platform/Darh/PortInterfaces/DarhReportDynamicallyEvent/E_NOT_OK</POSSIBLE-ERROR-REF>
                          </POSSIBLE-ERROR-REFS>
                        </CLIENT-SERVER-OPERATION>
                      </OPERATIONS>
                      <POSSIBLE-ERRORS>
                        <APPLICATION-ERROR>
                          <SHORT-NAME>E_NOT_OK</SHORT-NAME>
                          <ERROR-CODE>1</ERROR-CODE>
                        </APPLICATION-ERROR>
                      </POSSIBLE-ERRORS>
                    </CLIENT-SERVER-INTERFACE>
                    <!-- !LINKSTO DARH_133,1 -->
                    <MODE-SWITCH-INTERFACE>
                      <SHORT-NAME>DarhReportErrorModeInterface</SHORT-NAME>
                      <IS-SERVICE>true</IS-SERVICE>
                      <MODE-GROUP>
                        <SHORT-NAME>DarhReportErrorMode</SHORT-NAME>
                        <TYPE-TREF DEST="MODE-DECLARATION-GROUP"
                          >/BMW/Platform/Darh/ModeDeclarationGroups/DarhReportErrorMode</TYPE-TREF>
                      </MODE-GROUP>
                    </MODE-SWITCH-INTERFACE>

                    <!-- !LINKSTO DARH_145,2 -->
                    <MODE-SWITCH-INTERFACE>
                      <SHORT-NAME>ILifeCycle</SHORT-NAME>
                      <IS-SERVICE>false</IS-SERVICE>
                      <MODE-GROUP>
                        <SHORT-NAME>Mode</SHORT-NAME>
                        <TYPE-TREF DEST="MODE-DECLARATION-GROUP"
                          >/BMW/Platform/Darh/ModeDeclarationGroups/Darh_LifeCycle</TYPE-TREF>
                      </MODE-GROUP>
                    </MODE-SWITCH-INTERFACE>
                  </ELEMENTS>
                </AR-PACKAGE>

                <!-- Darh ModeDeclarationGroups -->
                <AR-PACKAGE>
                  <SHORT-NAME>ModeDeclarationGroups</SHORT-NAME>
                  <ELEMENTS>
                    <!-- !LINKSTO DARH_132,1 -->
                    <MODE-DECLARATION-GROUP>
                      <SHORT-NAME>DarhReportErrorMode</SHORT-NAME>
                      <INITIAL-MODE-REF DEST="MODE-DECLARATION"
                        >/BMW/Platform/Darh/ModeDeclarationGroups/DarhReportErrorMode/DARH_REPORT_ERROR_INACTIVE</INITIAL-MODE-REF>
                      <MODE-DECLARATIONS>
                        <MODE-DECLARATION>
                          <SHORT-NAME>DARH_REPORT_ERROR_ACTIVE</SHORT-NAME>
                        </MODE-DECLARATION>
                        <MODE-DECLARATION>
                          <SHORT-NAME>DARH_REPORT_ERROR_INACTIVE</SHORT-NAME>
                        </MODE-DECLARATION>
                      </MODE-DECLARATIONS>
                    </MODE-DECLARATION-GROUP>

                    <!-- !LINKSTO DARH_144,3 -->
                    <MODE-DECLARATION-GROUP>
                      <SHORT-NAME>Darh_LifeCycle</SHORT-NAME>
                      <CATEGORY>EXPLICIT_ORDER</CATEGORY>
                      <INITIAL-MODE-REF DEST="MODE-DECLARATION"
                        >/BMW/Platform/Darh/ModeDeclarationGroups/Darh_LifeCycle/DARH_STOPPED</INITIAL-MODE-REF>
                      <MODE-DECLARATIONS>
                        <MODE-DECLARATION>
                          <SHORT-NAME>DARH_INITIALIZED</SHORT-NAME>
                          <VALUE>0</VALUE>
                        </MODE-DECLARATION>
                        <MODE-DECLARATION>
                          <SHORT-NAME>DARH_RUNNING</SHORT-NAME>
                          <VALUE>1</VALUE>
                        </MODE-DECLARATION>
                        <MODE-DECLARATION>
                          <SHORT-NAME>DARH_STOPPED</SHORT-NAME>
                          <VALUE>2</VALUE>
                        </MODE-DECLARATION>
                      </MODE-DECLARATIONS>
                      <ON-TRANSITION-VALUE>3</ON-TRANSITION-VALUE>
                    </MODE-DECLARATION-GROUP>
                  </ELEMENTS>
                </AR-PACKAGE>

                <!-- Darh DataTypeMappingSets -->
                <AR-PACKAGE>
                  <SHORT-NAME>DataTypeMappingSets</SHORT-NAME>
                  <ELEMENTS>
                    <DATA-TYPE-MAPPING-SET>
                      <SHORT-NAME>Darh_ModeRequestTypeMappings</SHORT-NAME>
                      <DATA-TYPE-MAPS/>
                      <MODE-REQUEST-TYPE-MAPS>
                        <!-- !LINKSTO DARH_143,3 -->
                        <MODE-REQUEST-TYPE-MAP>
                          <IMPLEMENTATION-DATA-TYPE-REF DEST="IMPLEMENTATION-DATA-TYPE"
                            >/BMW/Platform/Darh/ImplementationDataTypes/Darh_LifeCycleRequestType</IMPLEMENTATION-DATA-TYPE-REF>
                          <MODE-GROUP-REF DEST="MODE-DECLARATION-GROUP"
                            >/BMW/Platform/Darh/ModeDeclarationGroups/Darh_LifeCycle</MODE-GROUP-REF>
                        </MODE-REQUEST-TYPE-MAP>
                        <MODE-REQUEST-TYPE-MAP>
                          <IMPLEMENTATION-DATA-TYPE-REF DEST="IMPLEMENTATION-DATA-TYPE"
                            >/AUTOSAR_Platform/ImplementationDataTypes/uint8</IMPLEMENTATION-DATA-TYPE-REF>
                          <MODE-GROUP-REF DEST="MODE-DECLARATION-GROUP"
                            >/BMW/Platform/Darh/ModeDeclarationGroups/DarhReportErrorMode</MODE-GROUP-REF>
                        </MODE-REQUEST-TYPE-MAP>
                      </MODE-REQUEST-TYPE-MAPS>
                    </DATA-TYPE-MAPPING-SET>
                  </ELEMENTS>
                </AR-PACKAGE>

              </AR-PACKAGES>
            </AR-PACKAGE>

          </AR-PACKAGES>
        </AR-PACKAGE>
      </AR-PACKAGES>
    </AR-PACKAGE>
  </AR-PACKAGES>
</AUTOSAR>
